home *** CD-ROM | disk | FTP | other *** search
- ;first whe go to amiga mode
- AMIGA
- WBStartup
- NoCli
-
- ;use tags
- NEWTYPE .tags
- a.l:b.l:c.l:d.l:e.l:f.l:g.l:h.l:i.l:j.l
- k.l:l.l:m.l:n.l:o.l:p.l:q.l:r.l:s.l:t.l
- u.l:v.l:w.l:x.l:y.l:z.l
- End NEWTYPE
-
- ;define constants
- #SA_Left =$80000021
- #SA_Top =$80000022
- #SA_Width =$80000023
- #SA_Height =$80000024
- #SA_Depth =$80000025
- ;#SA_DetailPen =$80000026
- ;#SA_BlockPen =$80000027
- #SA_Type =$8000002D
- #SA_DisplayID =$80000032
- #SA_Overscan =$80000034
- #SA_PubName =$8000002F
- #SA_PubTask =$80000031
- #SA_PubSig =$80000030
- #SA_LikeWorkbench=$80000047
-
- #PUBLICSCREEN=$0002
- naam$="Requestor"+Chr$(0)
-
- ;for getting default wb settings i make
- ;first the workbench screen my screen
-
- WBToScreen 0
- *pointertos.Screen=Addr Screen(0)
- *screenstruct.Screen=*pointertos.Screen\NextScreen
-
- ;define the tags and do NOT use wbwidth or wbhight function
- ;they are not exactly correct.
- ;Workbench resolutions higher than 640x512 will result to a
- ;wbwidth=640 and wbhight=512 So, a piccasso screen of 800x600
- ;will not work exactly like it has to be. Use
- ;*screenstruct.Screen\Width and *screenstruct.Screen\Height for
- ;the exact results !
-
- ;Acid Software, something to fix. ;-)
-
- scr.tags\a=#SA_Left ,0
- scr.tags\c=#SA_Top ,0
- scr.tags\e=#SA_Width ,*screenstruct.Screen\Width
- scr.tags\g=#SA_Height ,*screenstruct.Screen\Height
- scr.tags\i=#SA_Depth ,WBDepth
- scr.tags\k=#SA_Type ,#PUBLICSCREEN
- scr.tags\m=#SA_PubSig ,0
- scr.tags\o=#SA_PubTask ,FindTask_(0)
- scr.tags\q=#SA_PubName ,&naam$
-
- ;finaly this was what i am looking for ! Getting the exact viewmode !
- scr.tags\s=#SA_DisplayID ,GetVPModeID_(*screenstruct.Screen\_ViewPort)
-
- scr.tags\u=#SA_Overscan ,1
- scr.tags\w=#SA_LikeWorkbench ,1
- scr.tags\y=0 ,0
-
- ;now open my own screen, yupi !
- ScreenTags 0,titel$,&scr.tags
- Use Screen 0
-
- ;again for ower new screen
- *pointertos.Screen=Addr Screen(0)
- *screenstruct.Screen=*pointertos.Screen\NextScreen
-
- ;make my screen public screen !
- If PubScreenStatus_(*screenstruct.Screen,0)=0
- Nprint "Could not make public !"
- EndIf
-
- ;open a window
- Window 0,0,0,300,200,$1+$2+$8,"TEST",1,0
- Use Window 0
-
- wait for windowclose gadget
- Repeat
- ev.l=WaitEvent
- Until ev.l=$200
-
- CloseWindow 0
-
- *pointertos.Screen=Addr Screen(0)
- *screenstruct.Screen=*pointertos.Screen\NextScreen
-
- ;this will hold program end before every window is closed !
-
- While PubScreenStatus_(*screenstruct.Screen,1)=0
- Delay_(50)
- Wend
-
- End
-